package com.star.links.board.Impl;

import com.star.links.board.AbstractBoard;
import com.star.links.configure.PlayConfigure;
import com.star.links.views.Block;

import java.util.ArrayList;
import java.util.List;

/**
 * 矩阵m*n的方块分布
 */
public class FullBoard extends AbstractBoard {

    @Override
    protected List<Block> createPieces(PlayConfigure config, Block[][] blocks) {
        // 创建一个Piece集合, 该集合里面存放初始化游戏时所需的Piece对象
        List<Block> notNullPieces = new ArrayList<Block>();
        for (int i = 0; i < blocks.length ; i++)
        {
            for (int j = 0; j < blocks[i].length ; j++)
            {
                // 先构造一个Piece对象, 只设置它在Piece[][]数组中的索引值，
                // 图片等其他参数由其父类负责设置。
                Block block = new Block(i, j);
                // 添加到Piece集合中
                notNullPieces.add(block);
            }
        }
        return notNullPieces;
    }
}
